package cn.topcodes.tcsf.admin.service.res;

import cn.topcodes.tcsf.admin.commons.generic.IGenericService;
import cn.topcodes.tcsf.admin.domain.entity.SysPerm;
import cn.topcodes.tcsf.admin.domain.form.NestableSort;
import cn.topcodes.tcsf.admin.domain.view.SysPermVo;

import java.util.List;

/**
 * 系统权限管理服务接口
 * @author Leo
 */
public interface SysPermService extends IGenericService<SysPerm> {

    List<SysPerm> getRootPerms();

    List<SysPermVo> getPerms(Long assignRoleId, Long id, Long curUserId);

    void create(SysPerm perm, Long[] menus, Long[] urls);

    void update(SysPerm perm, Long[] menus, Long[] urls);

    Long[] getMenus(Long permId);

    Long[] getUrls(Long urls);

    void saveSort(List<NestableSort> sort);
}
